<template>
  <div>
    <div>这是父组件</div>
    <privte-child></privte-child>
  </div>
</template>
<script>
import PrivteChild from "@/components/PrivteChild/PrivteChild.vue"
// provide 和 inject
export default {
  components: {
    PrivteChild
  },
  data() {
    return {
      msg: '我是父组件'
    }
  },
  // 可以传递所有引入的子组件
  // 是依赖注入，也可以成为组件传值（和其相关的组件均可渠道provide中的值）
  // provide 里边既可以传递data中定义值，也可以传递methods当中的方法。
  // 1，简化相关组件的一个代码（可以直接获取到相关组件当中的方法）
  // 2，获取列表。比如修改列表当中的一个，修改（这是一个组件），修改成功之后，刷新这个列表。
  // 刷新列表，重新调用接口
  provide() {
    return {
      msg1: this.msg,
      msgFun: this.msgFun
    }
  },
  methods: {
    msgFun() {
      console.log("这是一个方法")
    }
  }
}
</script>